package com.pick.admin.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pick.admin.entity.SysRole;
import com.pick.base.common.PageQuery;

import java.util.List;

/**
 * 系统角色服务接口
 */
public interface SysRoleService extends IService<SysRole> {

    /**
     * 分页查询角色列表
     */
    IPage<SysRole> pageRoles(PageQuery pageQuery);

    /**
     * 创建角色
     */
    boolean createRole(SysRole role);

    /**
     * 更新角色
     */
    boolean updateRole(SysRole role);

    /**
     * 删除角色
     */
    boolean deleteRole(Long roleId);

    /**
     * 分配权限
     */
    boolean assignPermissions(Long roleId, List<Long> permissionIds);

    /**
     * 获取角色权限ID列表
     */
    List<Long> getRolePermissionIds(Long roleId);
}